export const nativeWin = window

export const utils = {
  /**
  * 数组转树
  */
  toTree: function (data) {
    data.forEach(function (item) {
      delete item.children
    })
    const map = {}
    data.forEach(function (item) {
      map[item.id] = item
    })
    const ret = []
    function buildLevel (parent) {
      let ret = 1
      if (parent && parent.level) {
        ret = parent.level + 1
      }
      return ret
    }
    data.forEach(function (item) {
      const parent = map[item.parentId]
      // 如果找到索引，那么说明此项不在顶级当中,那么需要把此项添加到，他对应的父级中
      if (parent && item.id !== item.parentId) {
        item.level = buildLevel(parent, map);
        (parent.children || (parent.children = [])).push(item)
      } else {
        // 如果没有在map中找到对应的索引ID,那么直接把 当前的item添加到 val结果集中，作为顶级
        item.level = buildLevel(parent)
        ret.push(item)
      }
    })
    return ret
  },
}